#include "GameState.h"
//testing version control
//testing again

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif


//! Default constructor
GameState::GameState()
{

}

//! Default destructor
GameState::~GameState()
{

}

//! Overridden by subclass.
//! Change state, overridden by subclasses
void GameState::ChangeState(GameManager * pManager, GameState * pState)
{
	pManager->ChangeState(pState);
}

//! Implemented by subclass
//! Keyboard event for state, main keyboard events
//! passed down by Game manager. 
void GameState::KeyboardEvent(GameManager* pManager)
{

}

//! Implemented by subclass
//! Mouse event for state, main mouse events
//! passed down by Game manager. 
void GameState::MouseEvent(GameManager* pManager)
{

}

//! Implemented by subclass
//! Initialisation, loads data required for state. 
void GameState::Init(GameManager * pManager)
{
     
	
}

//! Implemented by subclass
//! Update, moves and renders screen.
void GameState::Update(GameManager * pManager)
{

}

//! Implemented by subclass
//! Clear, tidy up
void GameState::Clear(GameManager* pManager)
{

}

//! Fades the screen In/Out
void GameState::FadeInOut(GameManager* pManager)
{
	// fade in and disable cursor
	pManager->getDevice()->getCursorControl()->setVisible(false);
	m_inOutFader = pManager->getDevice()->getGUIEnvironment()->addInOutFader();
	m_backColour.set(255,0,0,0); //255 90 90 156
	m_inOutFader->setColor(m_backColour);
	m_inOutFader->fadeIn(1500);
}
